package com.zlcx.tz.live.vo;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * <p></p>
 * <PRE>
 * <BR>    修改记录
 * <BR>-----------------------------------------------
 * <BR>    修改日期         修改人          修改内容
 * </PRE>
 *
 * @author zl
 * @version 1.0
 * @date Created in 2019/4/19 17:15
 * @copyright: Copyright (c) founders
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class LearnTimeParamVO {

    /**
     * "yyyy-MM-dd HH:mm:ss"
     */
    private String endTime;

    /**
     * "yyyy-MM-dd HH:mm:ss"
     */
    private String startTime;

    private String studyInfoName;

    //1学习计时,5连麦计时,11开始学习计时,15开始连麦计时 60计时自习室学习中
    private Integer type;

    private Long userId;

    private Long studyMinuteSeconds;

    private Long lianMaiId;

    private Long roomId;

    private Long contentId;

    @SuppressWarnings("all")
    public enum TypeEnums {
        JOB_COUNT_TIME(101, "job_count_time", "定时器学习计时"),
        JOB_COUNT_TIME_START(111, "job_count_time_start", "定时器学习计时开始"),
        WEEK(0, "week", "星期"),
        ORDERNARY_COUNT_TIME(1, "ordernary_count_time", "学习计时"),
        LIAN_MAI(5, "lian_mai", "连麦学习"),

        ORDERNARY_COUNT_TIME_START(11, "ordernary_count_time_start", "学习计时开始"), // 不入库,有消息通知
        ORDERNARY_COUNT_TIME_PAUSE(13, "ordernary_count_time_pause", "学习计时暂停"), // 不入库,无消息通知
        ORDERNARY_COUNT_TIME_CONTINUE(14, "ordernary_count_time_continue", "学习计时继续"), // 不入库,无消息通知
        LIAN_MAI_START(15, "lian_mai_start", "连麦学习开始"), // 不入库,有消息通知

        TIME_LEARN_ROOMING(60, "time_learn_room", "计时自习室学习中"),
        TIME_LEARN_ROOM_END(65, "time_learn_room_end", "计时自习室学习开始"),
        ;

        public final Integer code;
        public final String desc;
        public final String title;

        TypeEnums(Integer code, String desc, String title) {
            this.code = code;
            this.desc = desc;
            this.title = title;
        }

        public Integer getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }

        public String getTitle() {
            return title;
        }
    }

}
